// Generator 单词意思：生成器
// 是遍历器的生成器。
// 有2个特点：函数名有星号、函数体有yield
function*myGenerator(){
	
	yield 1;// 生成一个状态机
	yield 2;// 生成一个状态机
	yield 3;// 生成一个状态机
	//return 4; // return代表next结束，对应着generator遍历器的结束
	return 4;// 生成最后一个状态机  如果不写，默认返回undifined
}

//返回遍历器对象引用
var generator = myGenerator();
// 提供next方法, 每次调用该方法,得到一个yield状态机对象:{value:1, done: false}. 
// 状态机{value:4,done:true} 或 {value:undifined,done:true}
// return是退出next的一个标志，代表next结束

// 之后状态机一直处于{value:undifined,done:true}
generator.next(); // {value:1,done:false}
generator.next(); // {value:2,done:false}
generator.next(); // {value:3,done:false}
generator.next(); // {value:4,done:true}